1. Field of the Invention
This invention relates generally to the field of printers and more specifically to printers capable of printing in more than one font.
2. Description of Related Art
Early printers were originally based upon the technology of typewriters. As typewriter technology developed, so too did printer technology. However, these early printers and typewriters were typically limited to a single typeface having fixed attributes including spacing, height, pitch, style, stroke weight, symbol set, and orientation. Special capabilities, such as underlining or bolding, often could only be performed by the printer by backing up and restriking. In more advanced typewriters, the typeface could be changed by physically removing a component, usually a ball or a wheel, that bore every printable character.
Later printers, e.g. laser printers, diverged from typewriter technology. These printers did not have a set typeface, but could print a variety of typefaces having a range of attributes. The computer attached to a printer must be able to communicate to the printer as to how the printer should print. These printer instructions typically identify a "font" which is a set of characters that have similar attributes. A font has an assigned name, typeface, and is described by its format (bitmap or scalable), spacing (fixed or proportional), height, pitch, style (e.g. italic), stroke weight (e.g. bold), symbol set (e.g. English, mathematical), and orientation (e.g. portrait, landscape).
Typically, when a computer instructs an attached printer to print a document, the computer communicates to the printer which font to use and the information to be printed. In a popular application, the computer communicates, not a font's name, but the desired font's attributes. Next, the printer selects the appropriate font having the desired attributes from those it has available. To make the selection, the printer has a data processor (e.g. microprocessor) that utilizes a set of instructions called printer logic. The data processor also performs other functions, including printer initialization, output synthesis, and error handling.
Fonts are typically available to the data processor from a Font List which is usually a predetermined memory address space in which the fonts are located. The font that will be used by the printer is selected from the Font List by the data processor by finding the best fit based upon the attributes that are sent from the computer. Of course, printing of the document as requested by the computer requires that the printer have the desired font available. Also, more than one font in the Font List may have the desired attributes. However, only one font may be selected at a time. It is the data processor that makes the selection.
Printers generally have fonts available from three sources-resident, downloaded or cartridges. Resident fonts, also known as internal fonts, are fonts which are manufactured into the printer. Typically, resident fonts are stored in read-only memory (ROM). ROMs are well known to those skilled in the art. Downloaded fonts are fonts which are transferred into the printer's user random access memory (RAM) from the host computer. RAM is well known to those skilled in the art. A font cartridge is a removable media containing multiple fonts that, like resident fonts, are typically stored in ROM. When a cartridge is plugged into a slot in a printer, the printer has access to the fonts contained in the cartridge. A printer may have more than one slot for cartridges.
As discussed, resident fonts typically are stored in ROM. However, resident fonts may also be stored in the printer on a hard disk or other non-volatile rewritable storage device. Generally, when the printer is first powered on the data processor performs an initialization routine that includes transferring the resident fonts from the hard disk to the Font List in memory. In this case, the resident fonts are transferred to printer RAM at predefined memory addresses.
Previously, printers have often resolved font selection conflicts by assigning priority to the source of the fonts. Font selection conflicts arise when more than one font in the Font List matches the attributes sent by the host computer. Downloaded fonts generally have the highest priority, next cartridge fonts, last resident fonts. If there is more than one slot in the printer for cartridges, the slots are given separate priorities. The user controls the font selection by providing downloadable fonts and/or installing cartridges into the slots.
Printers typically have initialization procedures. The printer initializes whenever the power is cycled, or may initialize in response to a front panel control or external command. Initialization procedures typically include procedures for recognizing resident and cartridge fonts. Typically, after power has been cycled or during printer initialization, downloaded fonts are removed. It is also possible to selectively delete downloaded fonts from printer memory through special initialization commands. When resident fonts are stored on a hard disk in the printer, initialization generally includes loading of the resident fonts into memory.
Cartridges have many drawbacks. They are generally expensive. Repeated insertion and removal can deteriorate the electrical connections between a cartridge and its socket in the printer. Typically, a printer will have only one or two cartridge slots. This means that there is little versatility in the sizes and varieties of fonts that can be used.
Downloadable fonts also have disadvantages. A downloadable font is typically downloaded each time the printer needs it. Downloading a font from a computer to the printer is time consuming. Downloadable fonts occupy substantial computer storage space, and more importantly, substantial printer storage and memory space. If the printer is connected to a computer network, it is desirable that every computer on the network be able to download the desired fonts. Downloadable fonts also can be difficult to update, since every computer must be updated, and each computer may have downloadable fonts in different directories.
Resident fonts also have disadvantages. Resident fonts stored in ROM may only be changed by removing the ROM chips and replacing them. Generally, ROMs are fragile, and removal and replacement may damage the ROMs or the printer. Furthermore, such removal and replacement can be inconvenient, and may require a skilled technician. Even when resident fonts are stored on a hard disk in the printer, updates are difficult to perform.